﻿@using Microsoft.Azure.ActiveDirectory.GraphClient
@model User

@{
    ViewBag.Title = "User Profile";
}
<h2>@ViewBag.Title.</h2>

<table class="table table-bordered table-striped">
    <tr>
        <td>Display Name</td>
        <td>@Model.DisplayName</td>
    </tr>
    <tr>
        <td>First Name</td>
        <td>@Model.GivenName</td>
    </tr>
    <tr>
        <td>Last Name</td>
        <td>@Model.Surname</td>
    </tr>


    <tr>
        <td colspan="2" class="text-center">
            Additional Claim Fields
        </td>
    </tr>

    <tr>
        <td>Account Enabled</td>
        <td>@Model.AccountEnabled</td>
    </tr>

    <tr>
        <td>City</td>
        <td>@Model.City</td>
    </tr>
    <tr>
        <td>Country</td>
        <td>@Model.Country</td>
    </tr>


    <tr>
        <td>DirSyncEnabled</td>
        <td>@Model.DirSyncEnabled</td>
    </tr>
    <tr>
        <td>DisplayName</td>
        <td>@Model.DisplayName</td>
    </tr>
    <tr>
        <td>FacsimileTelephoneNumber</td>
        <td>@Model.FacsimileTelephoneNumber</td>
    </tr>
    <tr>
        <td>GivenName</td>
        <td>@Model.GivenName</td>
    </tr>


    <tr>
        <td>ImmutableId</td>
        <td>@Model.ImmutableId</td>
    </tr>
    <tr>
        <td>JobTitle</td>
        <td>@Model.JobTitle</td>
    </tr>
    <tr>
        <td>LastDirSyncTime</td>
        <td>@Model.LastDirSyncTime</td>
    </tr>
    <tr>
        <td>Mail</td>
        <td>@Model.Mail</td>
    </tr>
    <tr>
        <td>MailNickname</td>
        <td>@Model.MailNickname</td>
    </tr>
    <tr>
        <td>Mobile</td>
        <td>@Model.Mobile</td>
    </tr>

    <tr>
        <td>OnPremisesSecurityIdentifier</td>
        <td>@Model.OnPremisesSecurityIdentifier</td>
    </tr>

    <tr>
        <td>PasswordPolicies</td>
        <td>@Model.PasswordPolicies</td>
    </tr>

    <tr>
        <td>PhysicalDeliveryOfficeName</td>
        <td>@Model.PhysicalDeliveryOfficeName</td>
    </tr>
    <tr>
        <td>PostalCode</td>
        <td>@Model.PostalCode</td>
    </tr>
    <tr>
        <td>PreferredLanguage</td>
        <td>@Model.PreferredLanguage</td>
    </tr>

    <tr>
        <td>SipProxyAddress</td>
        <td>@Model.SipProxyAddress</td>
    </tr>
    <tr>
        <td>State</td>
        <td>@Model.State</td>
    </tr>
    <tr>
        <td>StreetAddress</td>
        <td>@Model.StreetAddress</td>
    </tr>

    <tr>
        <td>Surname</td>
        <td>@Model.Surname</td>
    </tr>
    <tr>
        <td>TelephoneNumber</td>
        <td>@Model.TelephoneNumber</td>
    </tr>

    <tr>
        <td>UsageLocation</td>
        <td>@Model.UsageLocation</td>
    </tr>
    <tr>
        <td>UserPrincipalName</td>
        <td>@Model.UserPrincipalName</td>
    </tr>
    <tr>
        <td>UserType</td>
        <td>@Model.UserType</td>
    </tr>

        @*
        ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


        ZX:Bypass for now

            [LowerCasePropertyAttribute]
            IPagedCollection<IAppRoleAssignment> AppRoleAssignments { get; }

            [LowerCasePropertyAttribute]
            IList<AssignedLicense> AssignedLicenses { get; }

            [LowerCasePropertyAttribute]
            IList<AssignedPlan> AssignedPlans { get; }

            [LowerCasePropertyAttribute]
            IPagedCollection<IOAuth2PermissionGrant> Oauth2PermissionGrants { get; }

            [LowerCasePropertyAttribute]
            IList<string> OtherMails { get; }

            [LowerCasePropertyAttribute]
            IPagedCollection<IDirectoryObject> OwnedDevices { get; }

            [LowerCasePropertyAttribute]
            PasswordProfile PasswordProfile { get; set; }

            [LowerCasePropertyAttribute]
            IList<ProvisionedPlan> ProvisionedPlans { get; }

            [LowerCasePropertyAttribute]
            IList<ProvisioningError> ProvisioningErrors { get; }

            [LowerCasePropertyAttribute]
            IList<string> ProxyAddresses { get; }

            [LowerCasePropertyAttribute]
            IPagedCollection<IDirectoryObject> RegisteredDevices { get; }

            [LowerCasePropertyAttribute]
            IStreamFetcher ThumbnailPhoto { get; }


        ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

        *@

</table>